/* Copyright 2009
 *
 * This program and the accompanying materials
 * are made available under the terms of the
 * Eclipse Public License v1.0 which accompanies
 * this distribution, and is available at
 *
 * 		http://www.eclipse.org/legal/epl-v10.html
 *
 * Unless required by applicable law or agreed to in
 * writing, software distributed under the License is
 * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
 * OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing
 * permissions and limitations under the License.
 *
 * Contributors:
 * 	   IBM Corporation - initial API and implementation for JDT/DLTK
 *     Sean W. Quinn - initial adoption for use with PHP from various sources.
 */
package org.eclipse.php.internal.core;

import java.util.Map;

import org.eclipse.core.runtime.IPath;
import org.eclipse.dltk.compiler.ISourceElementRequestor;
import org.eclipse.php.internal.compiler.util.SuffixConstants;

/**
 * @see org.eclipse.jdt.internal.core.SourceMapper
 */
public class SourceMapper implements ISourceElementRequestor, SuffixConstants {

	public SourceMapper(final IPath sourcePath, final String string, final Map options) {
		// TODO: Implement me!
	}

	@Override
	public void acceptFieldReference(char[] arg0, int arg1) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#acceptFieldReference() not yet implemented!");
	}

	@Override
	public void acceptMethodReference(char[] arg0, int arg1, int arg2, int arg3) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#acceptMethodReference() not yet implemented!");
	}

	@Override
	public void acceptPackage(int arg0, int arg1, char[] arg2) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#acceptPackage() not yet implemented!");
	}

	@Override
	public void acceptTypeReference(char[] arg0, int arg1) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#RuntimeException() not yet implemented!");
	}

	@Override
	public void acceptTypeReference(char[][] arg0, int arg1, int arg2) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#acceptTypeReference() not yet implemented!");
	}

	@Override
	public void enterField(FieldInfo arg0) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#enterField() not yet implemented!");
	}

	@Override
	public boolean enterFieldCheckDuplicates(FieldInfo arg0) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#enterFieldCheckDuplicates() not yet implemented!");
	}

	@Override
	public boolean enterFieldWithParentType(FieldInfo arg0, String arg1, String arg2) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#enterFieldWithParentType() not yet implemented!");
	}

	@Override
	public void enterMethod(MethodInfo arg0) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#enterMethod() not yet implemented!");
	}

	@Override
	public void enterMethodRemoveSame(MethodInfo arg0) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#enterMethodRemoveSame() not yet implemented!");
	}

	@Override
	public boolean enterMethodWithParentType(MethodInfo arg0, String arg1, String arg2) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#enterMethodWithParentType() not yet implemented!");
	}

	@Override
	public void enterModule() {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#enterModule() not yet implemented!");
	}

	@Override
	public void enterModuleRoot() {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#enterModuleRoot() not yet implemented!");
	}

	@Override
	public void enterType(TypeInfo arg0) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#enterType() not yet implemented!");
	}

	@Override
	public boolean enterTypeAppend(String arg0, String arg1) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#enterTypeAppend() not yet implemented!");
	}

	@Override
	public void exitField(int arg0) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#exitField() not yet implemented!");
	}

	@Override
	public void exitMethod(int arg0) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#exitMethod() not yet implemented!");
	}

	@Override
	public void exitModule(int arg0) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#exitModule() not yet implemented!");
	}

	@Override
	public void exitModuleRoot() {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#exitModuleRoot() not yet implemented!");
	}

	@Override
	public void exitType(int arg0) {
		// FIXME: Implement me!
		throw new RuntimeException(NamespaceFragmentRootInfo.class.getName()
				+ "#exitType() not yet implemented!");
	}
}